System and method for reducing the amount of repetitive data sent by a server to a client for vehicle navigation

ABSTRACT

A system and method for reducing the amount of repetitive data sent by a server to a client for vehicle navigation. The system includes a computer-based vehicle unit located in a vehicle, a gateway configured to wirelessly send and receive trip information to and from the vehicle unit, and a computer-based server in communication with the gateway over a network. The vehicle unit wirelessly receives signals from a computer-based server that includes the desired navigation information in packet form. The vehicle unit includes a user interface component that presents the received navigation information and records user requests. The server processes the requests, generates a trip plan according to the navigation information and sends the generated trip plan back to the vehicle unit via a gateway when a request has been completed.

PRIORITY CLAIM

This application is a Continuation of Ser. No. 11/820,066 filed Jun. 05,2006, now abandoned, which is a Continuation of Ser. No. 10/689,504filed Oct. 21, 2003, now U.S. Pat. No. 7,092,816, which is aContinuation of U.S. application Ser. No. 10/273,403 filed Oct. 16,2002, now U.S Pat. No. 6,671,617, which is a continuation of U.S.Non-provisional application Ser. No. 09/884,856 filed Jun. 18, 2001, nowU.S. Pat. No. 6,487,494, which claims priority from U.S. ProvisionalApplication Ser. No. 60/280,378 filed Mar. 29, 2001. Each and all of theforegoing applications is incorporated by reference as if fully setforth herein.

FIELD OF THE INVENTION

This invention relates generally to communication and computing systemsand methods and, more specifically, to a system and method for directinga motorist to a destination.

BACKGROUND OF THE INVENTION

With advances in on-board vehicle computer systems and wirelesstechnologies, vehicle navigation systems that provide users with currentlocation and driving directions to a desired destination have become areality. Vehicle navigation systems have taken one of two forms:on-board systems and network-based systems. On-board systems are drivenby a computer and associated database resident in each vehicle. Thesesystems generate driving instructions based on user voice or keyboardinput and map information stored in the on-board computing system.Network-based navigation systems do not rely on an on-board computer andassociated database, but rather provide a voice interface to anoff-vehicle computer or human information provider.

Significant disadvantages exist with both forms of vehicle navigationsystems. The on-board navigation system requires expensive and quicklyoutdated computer hardware. Moreover, with the on-board computingapproach, the database needs to be updated periodically to maintaincurrent navigation information. Indeed, such systems can never really beup to date or comprehensive as they rely on external updates, typicallyvia a CD-ROM or other removable electronic storage medium. Thenetwork-based system requires an open wireless link to the server. Inthese systems, the user typically dials a number and gives theirstarting and ending addresses (current location and destination). Thesystem computes the route and vocally recites it to the user turn byturn. If the user hangs up, or it otherwise disconnected, they need tocall again and give their new location and the destination address.Maintaining an active phone connection, especially in a situationinvolving long distance travel, is inefficient and expensive, as well asdistracting to the vehicle user.

Thus, there is a need for a system and method that addresses thedisadvantages associated with current attempts at vehicle navigationsystems.

SUMMARY

The present invention provides a system and method for reducing theamount of repetitive data sent by a server to a client for vehiclenavigation. The system includes a computer-based vehicle unit located ina vehicle, a gateway configured to wirelessly send and receive tripinformation to and from the vehicle unit, and a computer-based server incommunication with the gateway over a network. The vehicle unitwirelessly receives signals from a computer-based server that includethe desired navigation information. The vehicle unit includes a userinterface component that presents the received navigation informationand record user requests. The server processes the requests, generates atrip plan according to the navigation information, and sends thegenerated trip plan back to the vehicle unit via a gateway when arequest is completed.

The server includes a receiving component that receives information fromthe vehicle unit via the gateway, a trip plan generator that generates aplan according to navigation information, vehicle coordinates, and tripnavigation instructions. The trip plan generated includes a table oflocations for the trip plan associated with the navigation instructions.Along with the receiving component, the server includes a first sendingcomponent that sends the generated trip plan table to the vehicle unitvia the gateway. The server also includes a transaction component thatcompletes a transaction based upon the navigation instructions and thetrip plan generated. The vehicle unit chooses navigation promptsincluded in the trip plan based on a comparison of the present vehiclecoordinates and the trip plan. The chosen navigation prompts aredependent upon whether the vehicle coordinates are within a reasonablethreshold value from the location associated with the navigationprompts.

In accordance with further aspects of the invention, the user requestsinclude voice instructions.

In accordance with still further aspects of the invention, the userinterface includes a microphone for recording voice instructions and aspeaker for presenting received voice prompts audibly.

In accordance with yet other aspects of the invention, the transactioncomponent includes a voice recognition processor configured to performvoice recognition processing of the recorded requests.

In accordance with other aspects of the invention, the navigationprompts include voice prompts.

In accordance with further aspects of the invention, if the vehiclecoordinates are not within a reasonable threshold value from thelocation associated with the navigation prompts the vehicle unitcontacts the server and requests a new trip plan using the currentvehicle coordinates.

As will be readily appreciated from the foregoing summary, the inventionprovides a system and method for reducing the amount of repetitive datasent by a server to a client for vehicle navigation, as well as reducethe airtime required for such computation.

BRIEF DESCRIPTION OF THE DRAWINGS

The preferred and alternative embodiments of the present invention aredescribed in detail below with reference to the following drawings.

FIG. 1 is a diagram illustrating the general architecture of a systemthat operates in accordance with the present invention; and

FIGS. 2 and 3 are flow charts illustrating various embodiments performedby the system shown in FIG. 1.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The present invention is a vehicle navigation system 10 that includes avehicle 12 with an in-vehicle telematic control unit (TCU) 14. TCU 14 isin wireless communication with a server 16 over a network 18. Network 18preferably includes components for receiving wireless signals from TCU14 and converting the signals for wire or wireless transmission toserver 16. The network is preferably the Internet, but could be anypublic or private data network. Network 18 includes a gateway (notshown) that can send and receive wireless signals to and from TCU 14,and can communicate through other components (e.g., routers) in thenetwork to server 16. The wireless signals include information that ispreferably in packet form, although the information may be inalternative forms. TCU 14 includes a processor 20 coupled to a userinterface 22, a global positioning system (GPS) unit 24, a radio module26 and local storage or memory 28. User interface 22 preferably includesa speaker and a microphone (not shown), and may include a display. Theuser interface may also include on-or-off screen user interface buttons.Radio module 26 is capable of sending and receiving both voice and data.Server 16 includes a processor 30 and a database 32 that holds vehiclenavigation information: maps, road conditions and terrain, laneinformation and changes, touring instructions, etc.

System 10 of the present invention minimizes the amount of airtime usedbetween TCU 14 and server 16 to send a trip plan. When a user asks thesystem for directions, the vehicle's local coordinates (as determined byGPS unit 24) are sent from TCU 14 to server 16 over network 18. The useralso specifies their destination to the TCU. Entry of the user'snavigation instruction request, including the destination information,is preferably done vocally through the microphone, but may beaccomplished by other data entry means, such as via user interfacebuttons. The TCU transmits the vocalized destination to server 16. Theserver calculates the trip plan and generates a table of locations(expressed as location coordinates, such as GPS coordinates) and thecorresponding navigation prompts (e.g. turn left onto Howel St.). Thesenavigation prompts are preferably voice prompts, but may include otherforms of user notification, such as textual messages or differentaudible, visual or other signals. The table with navigation prompts issent to TCU 14 in vehicle 12. In an alternate embodiment, the navigationprompts are sent as an audio file (assuming voice prompts), such as aWAV file or an MP3 file. In another embodiment, the table includeslocations identified in text form that are displayed or converted toaudio by a text-to-speech (TTS) component of processor 20. Thenavigation prompts could also include symbols that indicate common wordssuch as “turn,” “left,” “onto,” “street,” and “avenue,” combined withthe vocal recording of the name of the proper noun “Howell” street. Asthe vehicle moves according to the trip plan and arrives at a locationwhose GPS coordinates match those of an entry in the table, thecorresponding voice prompt is played through the speakers to the systemuser. This process is described in more detail in FIG. 2.

FIG. 2 is a flow diagram of a process performed by system 10 shown inFIG. 1. First, at block 50, the user initiates a trip request. Triprequest initiation can occur in a number of ways. For example, the usermay select a trip request button included in user interface 22, or speaka start trip request command into the microphone that is interpreted byvoice recognition software executed by processor 20; either actioncauses processor 20 to begin a trip request. At blocks 52 and 54, theinitiated trip request causes TCU 14 to send the vehicle's GPScoordinates and any user entered instructions of the destination toserver 16. At block 56, server 16 interprets the voice instructions todetermine the destination. Interpreting includes performing voicerecognition processing. Next, at block 58, the server generates a tripplan according to vehicle navigation information such as stored map orother navigation information, the vehicle GPS coordinates, and theinterpreted voice instructions of the destination. At block 60, a tableof locations is generated for the trip plan. The table includes tripplan information, such as landmarks, turns, road changes or othersignificant travel-related information. Each location entry in the tableincludes an associated voice or text prompt. At block 62, the trip planincluding the table is sent to the TCU.

At decision block 64, once the vehicle receives the trip plan table, TCU14 determines if the vehicle is adhering to the trip plan. The TCUperiodically checks the vehicle's GPS location and determines if it ison the trip plan or within a threshold value from the trip plan. Thisthreshold value may be a function of the distance from a known locationin the trip plan, or location relative to known geographic marks, orsome combination of various factors. Within the threshold value, thesystem can document the present location of the vehicle in relation tothe trip plan and chart the navigational path to return to the trip planor a modified trip plan. If the vehicle is not adhering to the tripplan, the TCU contacts server 16 and requests a new trip plan accordingto the present vehicle location (block 66). If the TCU determines thevehicle is adhering to the trip plan, the TCU determines whether thevehicle is at an identified location within the trip plan table(decision block 68). If the vehicle is not at a location identified inthe trip plan table, the process continues checking locations accordingto decision blocks 64 and 68. If the vehicle is at a location in thetrip plan table or within a threshold value from a location in thetable, TCU 14 plays the voice prompt associated with the location in thetable that corresponds to the vehicle's location (block 70). In anotherembodiment, voice recordings associated with pre-stored symbols areplayed in series with a proper-noun street identifier. Then, the processcontinues checking vehicle location according to decision blocks 64 and68.

In an alternate embodiment, the system may cache parts of a voice promptthat are later combined by processor 20 to create a navigationinstruction. For example, TCU 14 receives the following voice promptsfrom server 16:

(a) “turn left onto Howel Street”;

(b) “turn left onto 4th Avenue”.

A caching component performed by processor 20 caches 3 sub-prompts:

#17 “turn left”

#18 “Howell Street”

#19 “4th Avenue”.

The tag identifiers for the (a) and (b) voice prompts include tagidentifiers for the sub-prompts (i.e. a=#17#18; b=#17#19). So in effect,in this alternate embodiment, each tag is a series of sub-tags. Server16 may send just the tag identifiers for the sub-prompts. Processor 20combines the sub-prompts according to the order the tag identifiers werereceived and presents the combination to the user.

FIG. 3 is a flow diagram of an alternative process performed by system10 shown in FIG. 1. First, at block 80, the user sends a trip request toserver 16 (see blocks 50-56 of FIG. 2). At block 82, the servercalculates a trip plan, creates a trip plan table according to thecalculated trip plan, and sends the trip plan table to the user's TCU14. The trip plan table includes locations and associated navigation(preferably voice) prompts. At block 84, as the user is travelingaccording to their trip plan, TCU 14 compares the vehicle's presentlocation (GPS generated) to the received table. At decision block 86, ifthe vehicle's present location is not in the trip plan table, theprocess returns to block 84, where it continues comparing the vehicle'spresent location to the entries in the trip plan table. If there is acorresponding location entry in the trip plan table, the logic proceedsto decision block 88. At decision block 88, if the table has acorresponding stored voice prompt, TCU 14 retrieves and plays thecorresponding stored voice prompt (block 90). If, at decision block 88,TCU 14 determines that a corresponding voice prompt does not exist inthe table or elsewhere in memory 28, the TCU sends a request to theserver to send a voice prompt according to a tag identifier thatindicates the missing voice prompt (block 92). At block 94, server 16sends the requested voice prompt. At block 96, the TCU plays thereceived voice prompt. At block 98, the TCU stores the received voiceprompt for possible later use. At block 100, the TCU purges saved voiceprompts according to a scheduled purge request, to a user purge request,or to a purge request sent from the server 16.

In an alternate embodiment, the steps performed at blocks 82-84 areperformed at server 16, and the server does not send the table to therequester, but compares the vehicle's present location (GPS generated)to the server-generated table. If an associated voice prompt is present,the server sends a tag identifier associated with the voice prompt toTCU 14. The TCU compares the sent tag identifier to previously receivedvoice prompts that are stored in memory 28 according to assigned tagidentifiers. If an appropriate voice prompt is in memory 28, processor20 retrieves it and presents it to the user via user interface 22. If avoice prompt is not found, TCU 14 sends a request to server 16 for theactual voice prompt, which is presented to the user when received fromthe server.

While the preferred embodiment of the invention has been illustrated anddescribed, as noted above, many changes can be made without departingfrom the spirit and scope of the invention. For example, the types ofcommunication between the vehicle and the server may be all wireless,the components of the server may be distributed over the network, andthe location identifier may be a non-satellite system that determinesvehicle location based on ground-based transmitters. Also, the order ofthe steps performed in the described embodiments may be altered withoutdeparting from the scope of the invention. Accordingly, the scope of theinvention is not limited by the disclosure of the preferred embodiment.Instead, the invention should be determined entirely by reference to theclaims that follow.

1. A vehicle navigation method comprising: initiating a trip requestutilizing a computer-based global positioning system (GPS) locatable ina vehicle, the trip request having vehicle coordinates determined by thecomputer-based GPS; receiving the trip request by a gateway in signalcommunication with the computer-based GPS; wirelessly conveying the triprequest from the gateway to a server remotely located from the vehicle;processing the trip request by the server to generate a trip plan;wirelessly conveying the trip plan to the gateway; and receiving thetrip plan from the gateway for presentation by the computer-based GPS.2. The method of claim 1, wherein the trip request includes trip voiceinstructions conveyed by a microphone in signal communication with thecomputer-based GPS unit.
 3. The method of claim 1, wherein processingthe trip request by the server to generate the trip plan comprisesdetermining a destination of the trip plan by interpreting trip voiceinstructions with voice recognition processing.
 4. The method of claim1, wherein the trip plan includes navigation prompts at least one of avisual prompt presentable on an interface of the computer-based GPS andvoice prompts conveyable by a speaker in signal communication with thecomputer-based GPS.
 5. The method of claim 1, further comprisingdetermining if the vehicle is adhering to the trip plan, whereindetermining adherence comprises: determining a distance between thevehicle coordinates and a trip plan location; and if the vehiclecoordinates are not within a threshold value from the trip plan, sendingpresent vehicle coordinates to the server, generating a new trip planand trip plan table based on the sent present vehicle coordinates, andsending the new trip plan table to the vehicle.
 6. The method of claim3, wherein processing the trip request by the server to generate thetrip plan includes: before a voice prompt is stored at the vehicle,requesting the non-stored voice prompt from the server and transmittingthe non-stored voice prompt from the server to the vehicle; andpresenting the transmitted voice prompt.
 7. The method of claim 6,further comprising saving the sent voice prompt according to acorresponding identifier.
 8. The method of claim 6, further comprisingpurging—the sent voice prompts according to a scheduled purge request.9. The method of claim 6, further comprising purging—the sent voiceprompts according to a user purge request.
 10. The method of claim 6,further comprising purging the sent voice prompts according to a servergenerated purge request.
 11. A vehicle navigation system comprising: acomputer-based global positioning system (GPS) locatable in a vehicle,the computer-based GPS having a user interface configured to receive atrip request communicated from a user, the trip request includes vehiclecoordinates determined by the computer-based GPS; a gateway in signalcommunication with the computer-based GPS; and a server remotely locatedfrom the vehicle, the server configured to wirelessly receive the triprequest from the gateway, process the trip request to generate a tripplan, and wirelessly convey the trip plan to the gateway forcommunication to the computer-based GPS.
 12. The system of claim 11,wherein the trip plan includes a table of locations with associatednavigation prompts.
 13. The system of claim 12, wherein: thecomputer-based GPS is configured to compares present vehicle coordinatesto the trip plan table; and if, according to the comparison, the vehiclecoordinates are within a threshold value from a location in the table,the GPS presents the navigation prompt associated with the location inthe table that is within the threshold value of the vehicle's location.14. A vehicle navigation apparatus comprising: a computer-basedcomputer-based global positioning system (GPS) locatable in a vehicle,the computer-based GPS having a user interface configured to receive atrip request communicated from a user, the trip request having vehiclecoordinates determined by the computer-based GPS; means for enteringtrip voice instructions; means for determining vehicle coordinates;means for sending vehicle coordinates and the entered voice instructionsto a server over a network for the generation of a trip plan; means forreceiving and conveying the trip plan to the user.